package com.fxp.project.jiuselu.web.models.user.service;

import com.fxp.project.jiuselu.web.models.user.entity.JslUserAddress;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 用户地址表 服务类
 * </p>
 *
 * @author Jason.Wang
 * @since 2021-11-10
 */
public interface IJslUserAddressService extends IService<JslUserAddress> {

    /**
     * selectJslUserAddressListByUserId: 获取当前用户的地址列表信息<br/>
     *
     * @param userId
     * @return
     * @author Kai.Wang
     * @date 2021/11/10 13:37
     */
    List<JslUserAddress> selectJslUserAddressListByUserId(Long userId);

    /**
     * selectDefaultJslUserAddressByUserIdWithAddressId: 根据用户的Id获取当前的地址信息<br/>
     *
     * @param userId
     * @return
     * @author Kai.Wang
     * @date 2021/11/10 13:43
     */
    JslUserAddress selectDefaultJslUserAddressByUserIdWithAddressId(Long userId);

    /**
     * selectJslUserAddressByUserIdWithAddressId: 根据当前用户获取指定的地址信息<br/>
     *
     * @param userId
     * @param addressId
     * @return
     * @author Kai.Wang
     * @date 2021/11/10 13:42
     */
    JslUserAddress selectJslUserAddressByUserIdWithAddressId(Long userId, Long addressId);

    /**
     * updateUserAddressToDefault: 设置当前地址为默认地址，并且有且只有一个默认地址<br/>
     *
     * @param addressId
     * @param userId
     * @return
     * @author Kai.Wang
     * @date 2021/11/10 15:19
     */
    int updateUserAddressToDefault(Long addressId, Long userId);
}
